实战PyQt5: 059 您所在的位置:网站首页 pyqt dialog 实战PyQt5: 059

实战PyQt5: 059

#实战PyQt5: 059| 来源: 网络整理| 查看: 265

QColorDialog简介

QColorDialog控件是一个常用的颜色选择对话框,继承自QDialog,是Qt内建的标准对话框之一。当程序中需要设置某一控件或控件外字体颜色时,我们使用该控件,对颜色进行选择、设置。

颜色对话框界面有以下几种功能:

从基础颜色中选择需要的颜色;从色谱图中选择所需颜色;将喜欢的颜色添加到常用颜色中;使用取色器在屏幕上取色;微调三原色数值。

QColorDialog常用方法有:

getColor(): 打开一个颜色选择对话框,如果点击‘确定’或等效按钮,返回选取的颜色,否则返回Q ColorDialog缺省颜色;currentColor(): 返回当前颜色值;selectedColor(): 返回已选颜色值;setCurrentColor(): 设置当前颜色值;setCustomColor(): 设置用户自定义颜色;customColor(): 返回自定义颜色。

QColorDialog常用信号:

currentColorChanged(): 当前颜色改变时发射该信号;colorSelected(): 颜色最终被选择时发射该信号;

QColorDialog类继承关系:

实战PyQt5: 059-颜色对话框QColorDialog

 

测试QColorDialog

创建文件qcolordialog.py,通过颜色选择对话框选择相应颜色,将颜色的效果显示在一个QLabel标签页的文本上,完整代码如下:

import sys from PyQt5 import QtCore, QtGui, QtWidgets from PyQt5.QtCore import Qt from PyQt5.QtGui import QPalette from PyQt5.QtWidgets import (QApplication, QWidget, QLabel,                              QPushButton, QColorDialog, QVBoxLayout)   class DemoColorDialog(QWidget):     def __init__(self, parent=None):         super(DemoColorDialog, self).__init__(parent)                         # 设置窗口标题         self.setWindowTitle('实战PyQt5: QColorDialog Demo!')               # 设置窗口大小         self.resize(360, 240)                  self.initUi()              def initUi(self):                  vLayout = QVBoxLayout(self)         vLayout.addSpacing(10)                  btnTest = QPushButton('调整颜色', self)         btnTest.clicked.connect(self.onSetFont)                  self.label_text = QLabel('实战PyQt5: \n测试QColorDialog')         self.label_text.setAlignment(Qt.AlignCenter)         self.label_text.setFont(QtGui.QFont(self.font().family(), 16))                  vLayout.addWidget(btnTest)         vLayout.addWidget(self.label_text)                  self.setLayout(vLayout)                      def onSetFont(self):         col = QColorDialog.getColor()         pal = self.label_text.palette()         pal.setColor(QPalette.WindowText, col)         self.label_text.setPalette(pal)          if __name__ == '__main__':     app = QApplication(sys.argv)     window = DemoColorDialog()     window.show()     sys.exit(app.exec())

运行结果如下图:

实战PyQt5: 059-颜色对话框QColorDialog

测试QColorDialog

本文知识点 使用QColorDialog选择颜色;QColorDialog对话框功能区域;使用QPalette方式改变QLabel上文本的颜色。

前一篇:  实战PyQt5:058-字体选择对话框QFontDialog



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有